/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAO;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JOptionPane;
import models.Livro;

/**
 *
 * @author Maria Sophia
 */
public class LivroJDBC implements LivroDAO {
    
    @Override
    public void inserir(Livro l) throws DAOException {
        
        try {
            try (Connection conn = FabricaConexao.getConnection()) {
                Statement st = conn.createStatement();
                String sql = "insert into livro (titulo,autor,estoque1,estoque2,estoque3,campus) values ('" + l.getTitulo() 
                        + "','" + l.getAutor() + "','" + l.getEstoquecampos1() + "','"
                            + 0 + "','" + 0 + "','" + l.getCampus() + "');";

                st.executeUpdate(sql);
            }
            
        } catch (ErroConexao | SQLException ex) {
            throw new DAOException(ex);
        }
        JOptionPane.showMessageDialog(null, "Adicionado com sucesso");

    }

    @Override
    public void remover(Livro l) throws DAOException {
        Connection conn;
        try {
            conn = FabricaConexao.getConnection();
            Statement st = conn.createStatement();
            String sql = "delete from livro where registro='" + l.getRegistro() + "';";
            st.executeUpdate(sql);
            conn.close();
        } catch (ErroConexao | SQLException ex) {
            throw new DAOException(ex);
        }

    }

    @Override
    public void localizar(Livro l) throws DAOException {
        Connection conn;
        //	Carro retorno=null;
        try {
            conn = FabricaConexao.getConnection();
            Statement st = conn.createStatement();
            String sql = "select * from carro where placa='";
            //		sql=sql.concat(placa);
            ResultSet rs = st.executeQuery(sql);
            if (rs.next()) {
                //			retorno=new Carro();
                //			retorno.setAno(rs.getInt("ano"));
                //			retorno.setModelo(rs.getString("modelo"));
                //			retorno.setPlaca(rs.getString("placa"));
            }
            conn.close();
        } catch (ErroConexao | SQLException ex) {
            throw new DAOException(ex);
        }

    }

    @Override
    public void listar(Livro l) throws DAOException {
        Connection conn;
//		Carro c[]=new Carro[0];
        try {
            conn = FabricaConexao.getConnection();
            Statement st = conn.createStatement();
            String sql = "select * from carro";
            ResultSet rs = st.executeQuery(sql);
            int i = 0;
            while (rs.next()) {
                i = i + 1;
//				Carro c2[] = new Carro[c.length];
//				for (int j =0;j<c.length;j++){
//					c2[j]=c[j];
//				}
//				c=new Carro[i];
//				for (int j =0;j<c2.length;j++){
//					c[j]=c2[j];
//				}
//				Carro carro = new Carro();
//				carro.setAno(rs.getInt("ano"));
//				carro.setModelo(rs.getString("modelo"));
//				carro.setPlaca(rs.getString("placa"));
//				c[i-1]=carro;
            }
            conn.close();
        } catch (ErroConexao | SQLException ex) {
            throw new DAOException(ex);
        }
//		return c;

    }
}
